home *** CD-ROM | disk | FTP | other *** search
/ Suzy B Software 2 / Suzy B Software CD-ROM 2 (1994).iso / prntutil / ascreen / hypertex / hyp.pl next >
Encoding:
Perl Script  |  1995-04-25  |  616 b   |  26 lines

  1. #!/usr/local/bin/perl
  2. # HYP.PL --- Perl-Programm zum Sortieren von HyperTeX-Link-Dateien
  3. # 12. Januar 1992 Anselm Lingnau
  4. #
  5. # Syntax:    perl hyp.pl foo.hyp >foo.hl
  6. #
  7. while (<>) {
  8.     ($page, $kind, $name) = split(/([>!])/, $_, 3);
  9.     $def{$name} = "$page" if $kind eq '!';
  10.     $ref{$name} .= "$page#";
  11. }
  12. @refs = sort keys %ref;
  13. print scalar(@refs), "\n";
  14. foreach (@refs) {
  15.     $ref{$_} = join(':', &nodoubles($ref{$_}));
  16.     $def{$_} = '0' if !defined $def{$_};
  17.     print "$ref{$_}:$def{$_}:$_";
  18. }
  19.  
  20. sub nodoubles {
  21.     local(%seen);
  22.     local(@ret) = grep(!$seen{$_}++, split(/#/, $_[0]));
  23.     (scalar(@ret), @ret);
  24. }
  25.  
  26.